Linear and circular interpolation contouring control using repeated computation

ABSTRACT

A numerical path control system including a time shared digital computer generating for each of a plurality of axes regularly recurring numerical excursion commands. A two axis system is shown to be capable of deriving from a small number of data words successive straight line path or circular arc path command signals at a rate of 50 times a second and of converting these into intermediate or secondary command signals which are applied to the servos of the machine axes at a rate of 500 times a second.

United States Patent {15] 3,656,124 1 51 Apt-.11, 1972 McGee 154] LINEAR AND CIRCULAR INTERPOLATION CONTOURING CONTROL USING REPEATED COMPUTATION [72] Inventor: John K. McGee, Houston, Tex. [73] Assignee: Giddings 81 Lewis, lnc., Fond du Lac, Wis.

[22] Filed: Sept. 26, 1968 r [2!] Appl. No.: 762,835

521 u.s.c1 .Q ..340/|72.s, 318/573 [51] Int. Cl. ..G061 15/46 [58] FieldofSeareh ..235/l57, 151.11, 197; 340/1725; 318/20, 573

[56] Relerences Cited UNITED STATES PATENTS 1058,65? 10/1962 Tripp ..235/154 3,109,09210/1963 Lottetal. ..235/l5l.1lX 3,277,288 10/1966 Hartley ..235/l5l.l1

Primary Examiner-Gareth D. Shaw Assistant Examiner-Melvin B. Chapnick Attorney-Wolfe, Hubbard, Leydig, Voit & Osann ABSTRACT A numerical path control system including a time shared digital computer generating for each of a plurality of axes regularly recurring numerical excursion commands. A two axis system is shown to be capable of deriving from a small number of data words successive straight line path or circular arc path command signals at a rate of 50 times a second and of converting these into intennediate or secondary command signals which are applied to the servos of the machine axes at a rate of 500 times a second.

82 Claims, 106 Drawing Figures PATENTEDAFR H 1912 3.656.124

SHEET near 76 Pp 0000 wmvm l v #1 -29. 0am +0: .6900

I y I: 14.4. 0000 +10. 00

SHEET 03UF 76 PATENTEDAPR 1 1 1972 PATENTEDAPR 1 1 1972 SHEET 120F 76 Q mu my 5% Q Mil 6 702. JOHN K MC GEE I'llllll SHEET 130! 76 PATENTEDAFR 1 1 me ITrJZA/EVJ'.

SHEET 15 0F 76 PATENTEDAPR 11 I972 mun/roe. 8y JOHN K Me 655 PATENTEDAFR 1 1 I972 SHEET 16UF 76 PATENTEHAPR H m2 3.656.124

JOHN K MC GEE PATENTEDAPR H 1912 3,656,124

sum 19m 76 JOHN K. MCGEE 

1. The method of moving a member simultaneously along X and Y axes to produce resultant movement along a desired path segment which extends either substantially along or at right angles to a vector which is the sum of X and Y axis components dx and dy, comprising the steps of a. computing and digitally signaling in a digital processing apparatus the numerical values of small incremental moves Delta X and Delta Y each of which is proportional to a different one of the components dx and dy by the same factor of proportionality which is equal to (V. Delta T)/D where V is a numerical value representing path velocity, Delta T is a numerical value representing a time period, and D is a numerical value representing the length of said vector, b. measuring off successive, equal and actual time periods Delta T, and C. during each such time period utilizing said digital signaling to cause movement of said member through the distance Delta X along said X axis and through the distance Delta Y along the Y axis.
 2. utilizing said last derived signals to move said member along the X axis through a distance Delta X24/N during each of N successive time intervals t, i. during time periods T4 and T5:
 2. The method defined in claim 1 further including the step of changing the factor of proportionality relating the values of Delta X and Delta Y to dx and dy by changing the numerical value V while keeping the numerical value Delta T constant, thereby to determine and control the velocity V of the movable member along the desired path segment.
 2. the product of J times the value of Q, D. measuring off successive equal time periods of Delta T in actual time, and e. during each such time period utilizing said first and second sets of signals to drive said member simultaneously and substantially uniformly through the distance Delta X along the X axis and through the distance Delta Y along the Y axis.
 2. the product of J, said predetermined time-representing number Delta T, and the composite velocity V all divided by the composite distance D; c. measuring off successive equal time periods of Delta T in actual time, and d. during each such time period utilizing said first and second sets of signals to drive said member simultaneously and substantially uniformly through the distance Delta X along the X axis and through the distance Delta Y along the Y axis until the member has been moved substantially through the composite distance D.
 2. the product of J, said predetermined time-representing number Delta T, and the composite velocity V all divided by the one path segment D, c. measuring off successive equal periods of Delta T in actual time, d. during each such time period utilizing said first and second sets of signals to drive said member simultaneously and substantially uniformly through the distance Delta X along the X axis and through the distance Delta Y along the Y axis until the member has been moved substantially through the one path segment D, and e. during at least one of the last few periods Delta T prior to the complete execution of the one path segment D, representing numerically by digital electrical signals the X and Y components I and J of the next path segment D, and thereafter continuing the steps (b) through (d) defined above to effect execution of movement by the member through said next path segment D.
 2. processing in said apparatus said I4 signals to derive therefrom signals numerically representing the quantity and storing said Delta Y35 signals, h. during time periods T3 and T4 utilizing said Delta X24 signals to move said member at uniform speed along the X axis through a distance Delta X24 , and i. during time periods T4 and T5 utilizing said Delta Y35 signals to move said member at a uniform speed along the Y axis through a distance Delta Y35.
 2. the product of J, said predetermined time-representing number Delta T, and the composite velocity V, all divided by the first composite distance D, c. measuring off successive equal time periods of Delta T in actual time, d. during each of said time periods Delta T utilizing said first and second sets of signals to drive said members simultaneously and substantially uniformly through the distance Delta X along the X axis and through the distance Delta Y along the Y axis, e. adjusting said first and second sets of signals in said apparatus to represent modified values Delta X'' and Delta Y'' of said Delta X and Delta Y distances during at least one of said periods to make the composite movement executed by said member at the end of one of said time periods Delta T agree closely with the desired first composite distance D, and f. during at least one of the last few periods Delta T prior to the complete execution of the composite distance D representing numerically in said apparatus by digital electrical signals the X and Y components I and J of the next composite distance D and processing such latter signals as defined in step (b) above, and immediately after said one time period repeating the steps (c) through (e) defined above to effect execution of movement by the member of said next composite distance D.
 2. processing said J1 signals to derive therefrom in said apparatus signals numerically representing the quantity and storing said Delta X02 signals, c. during time period T1:
 2. processing said I2 signals to derive therefrom in said apparatus signals numerically representing the quantity and storing said Delta Y13 signals, d. during time periods T1 and T2 utilizing said Delta X02 signals to move said member at uniform speed along the X axis through a distance Delta X02, e. during time period T2:
 2. processing in said apparatus said J3 signals to derive therefrom signals numerically representing the quantity and storing said Delta X24 signals, f. during time periods T2 and T3 utilizing said Delta Y13 signals to move said member at uniform speed along the Y axis through a distance Delta Y13, g. during time period T3:
 2. processing in said apparatus the signals J1 to derive therefrom signals numerically representing the quantity and storing said Delta X02 signals, c. during time period T1:
 2. processing in said apparatus said I2 signals to derive therefrom signals numerically representing the quantity and storing said Delta Y13 signals, d. during time periods T1 and T2:
 2. utilizing said last derived signals to move said member along the X axis through a distance of Delta X02/N during each of N successive time intervals t, e. during time period T2:
 2. processing in said apparatus said signal J3 to derive therefrom signals numerically representing the quantity and storing said Delta X24 signals, f. during time periods T2 and T3:
 2. utilizing said last derived signals to move said member along the Y axis through a distance Delta Y13/N during each of N successive time intervals t, g. during time period T3:
 2. processing in said apparatus said I4 signals to derive therefrom signals numerically representing the quantity signals, h. during time periods T3 and T4:
 2. the signals stored in said fourth and sixth storage means, respectively representing Delta Y and YCP, i. means for causing said computer to produce in response to the signals from said third and fifth storage means signals representing XCPnew XCP + Delta X and in response to the signals from said fourth and sixth storage means signals representing YCPnew YCP + Delta Y, j. means for feeding said XCPnew and YCPnew signals from said computer to said fifth and sixth storage means respectively, and k. first and second filtering servos respectively connected to respond to said changing XCP and YCP signals and to keep the positions of said controlled member along the X and Y axes substantially equal to the numerical values of XCPnew and YCPnew.
 2. the sum of the quantity stored in said fifth storage means and M times the quantity stored in said third storagE means, where M is a preselected integer greater than zero, and c. means responsive to said signal representing comparative magnitudes for producing a block end warning signal during the first time period in which the initially lesser of the compared quantities becomes the greater.
 2. the product of J, said predetermined time-representing number Delta T, and the composite velocity V all divided by the composite distance D, c. measuring off successive equal periods of Delta T in actual time, d. during each such time period utilizing said first and second sets of signals to drive said member simultaneously and substantially uniformly through the distance Delta X along the X axis and through the distance Delta Y along the Y axis, and e. adjusting the said first and second sets of signals in said apparatus to represent modified values of the Delta X and Delta Y numbers during at least one of said periods to make the position reached by said member at the end of a given time period Delta T agree closely with the desired end point coordinates X2, Y2.
 2. utilizing said last derived signals to move said member along the Y axis through a distance Delta Y35/N during each of N successive time intervals t,
 3. The method defined in claim 1, further characterized in that said components dx and dy are the X and Y components I and J of a vector path segment having a length D and wherein said steps (b) and (c) are repeated until said member has moved along the desired path through a distance substantially equal to D.
 4. The method defined in claim 3 wherein the incremental moves Delta X and Delta Y are computed according to the expressions
 5. The method defined in claim 1, further characterized in that said components dx and dy are the X and Y axis components J and I of radius vectors R extending from the center of an arc to points on an arc forming the path segment, and the incremental moves Delta X and Delta Y are the X and Y axis components of resultant vector increments Delta D extending substantially along chords of arcs which are bisected at right angles by said radius vectors.
 6. The method defined in claim 5 wherein the incremental moves Delta X and Delta Y are computed according to the expressions where V is the numerical value of a desired velocity of the member along the arc, Delta T is the numerical value of one of said time periods, and R is the length of said radius vector.
 7. The method of moving a member simultaneously along X and Y axes to produce resultant movement along successive path segments D which are the vector sum of X and Y axis components I and J, comprising the steps of
 8. The method defined in claim 7 in which said step (a) includes the multiplication of I X Q and J X Q in order to produce said digital signaling of the numerical values of said small incremental moves Delta X and 66 Y.
 9. The method defined in claim 8 wherein the factor oF proportionality Q is equal to (V . Delta T)/D, where V is the desired velocity along the path segment, D is the length of the path segment and Delta T numerically represents one of the said time periods; and wherein said incremental moves Delta X and Delta Y are computed according to the respective expressions
 10. The method of moving a member simultaneously along X and Y axes to produce resultant motion substantially along successive arcuate path segments defined by radius vectors R extending from centers to points on the arcs and having X and Y axis components I and J, said method comprising the steps of
 11. The method defined in claim 10 in which said step (a) includes the multiplication of I X Q and J X Q in order to produce said digital signaling of the numerical values of said small incremental moves Delta X and Delta Y.
 12. The method defined in claim 11 wherein the factor of proportionality Q is equal to (V . Delta T)/R, where V is the desired velocity along the arc, R is the length of said radius vector, and Delta T numerically represents one of said time periods, and wherein said incremental moves Delta X and Delta Y are computed rapidly during each time period according to the expressions
 13. The method of moving a member simultaneously along X and Y axes to produce resultant composite motion at a desired vector velocity V, comprising the steps of a. computing and digitally signaling in a digital processing apparatus numerical values of Delta X and Delta Y which are respectively equal to Vx Delta T and Vy. Delta T where Vx and Vy are numbers representing the X and Y axis components of the desired vector velocity V and Delta T is a predetermined constant number representing time, b. measuring off successive, equal and actual time periods Delta T, c. during each such actual time period causing said member in response to said digital signaling to move the distance Delta X along the X axis and the distance Delta Y along the Y axis, and d. changing the velocity representing numbers Vx and Vy by equal proportions to modify the signaled values Delta X and Delta Y, thereby to modify the magnitude of the desired veloCity V and the resultant velocity at which the member is moved.
 14. The method moving a member simultaneously along X and Y axes to produce resultant composite motion at different desired velocities V and different vector angles, comprising the steps of a. computing in a digital processing apparatus a first number proportional to V . cos theta , where V represents the desired velocity and theta represents the desired vector angle relative to the X axis, b. computing in said apparatus a second number proportional to V. sin theta , c. computing and digitally signaling in said apparatus a third number Delta X equal to the product of the first number and a predetermined constant, time-representing number Delta T, d. computing and digitally signaling in said apparatus a fourth number Delta Y equal to the product of said second number and Delta T, e. measuring off successive, equal and actual time periods Delta T, and f. during each such time period causing said member in response to the signals representing Delta X and Delta Y to move the distance Delta X along the X axis and to move the distance Delta Y along the Y axis.
 15. The method defined in claim 14 further including the step of changing the quantity V to change the composite velocity at which said member is moved.
 16. The method defined in claim 14 further including the step of changing the angle theta to change the direction in which said member is moved.
 17. The method defined in claim 14 wherein the quantity cos theta is determined by the ratio I/D and the quantity sin theta is determined by the ratio J/D, where I and J are the X and Y axis component distances of a desired path segment having a length D, the quantities I and J normally being substantially greater than the quantities Delta X and Delta Y.
 18. The method defined in claim 14 wherein the quantity cos theta is determined by the ratio J/R and the quantity sin theta is determined by the ratio I/R, where I and J are the X and Y axis component distances of a radius length R extending from the center of a circle to a point on an arc of that circle which is to be traced by the movement of the member.
 19. The method defined in claim 18 wherein the component distances I and J and the ratios I/R and J/R are changed at intervals of Delta T in actual time.
 20. The method defined in claim 14 wherein the third and fourth numbers Delta X and Delta Y are recomputed and re-signaled in said apparatus at intervals Delta T in actual time.
 21. A method of generating a series of numerical command signals for moving a member displaceable along X and Y axes at velocity V in a straight line path at angle theta with the X axis comprising: a. measuring off successive equal periods of Delta T in actual time, b. producing in a digital processing apparatus first and second sets of signals respectively representing numerically unit moves V . Delta T . sin theta and V . Delta T . cos theta , c. producing in said apparatus third and fourth sets of signals digitally representing respectively commanded positions XSC and YSC along the X and Y axes to which said member is to move, and d. changing said third and fourth sets of signals, once during each Delta T time period, by amounts equal to said unit moves V . Delta T . sin theta and V . Delta T . cos theta , respectively.
 22. The method of moving a member displaceable along X and Y axes at a selected angle in space and through a desired composite distance D at a desired composite velocity V which comprises a. representing by digital signals in a digital processing apparatus the X and Y components I and J of said composite distance, b. processing said digital signals in said apparatus to derive first and second sets of signals representing Delta X and Delta Y numbers which are respectively equal to:
 23. The method of moving a member displaceable along X and Y axes through successive path segments D at successive selected angles in space with successive desired composite velocities V which comprises: a. representing numerically by digital electrical signals the X and Y components I and J of one path segment D, b. processing said signals to derive first and second sets of electrical signals numerically representing Delta X and Delta Y distances which are respectively equal to:
 24. The method of moving a member displaceable along X and Y axes through a desired composite distance D at a selected angle in space and with a desired composite velocity V which comprises a. representing by first digital signals in a digital processing apparatus a numerical quantity Q which is equal to the quotient of the velocity V divided by the distance D, all multiplied by a number representing a predetermined time period Delta T, b. representing by second digital signals in said apparatus the X and Y components I and J of said composite distance D, c. processing said first and second digital signals to derive first and second sets of signals in said apparatus representing Delta X and Delta Y numbers which are respectively equal to:
 25. The method defined in claim 1 further including the steps of d. computing and digitally signaling in said apparatus the numerical values of micromoves Delta X/N and Delta Y/N, where N is a preselected constant, e. measuring off N equal and successive actual time periods Delta T/N during each of said periods Delta T, f. and executing the said step (c) by utilizing the digital signaling of micromoves during each of said periods Delta T/N to cause movement of said member through the distance Delta X/N along said X axis and through the distance Delta Y/N along the Y axis.
 26. The method of moving a member simultaneously along X and Y axes to produce resultant composite motion at a desired vector velocity V, comprising the steps of a. computing and digitally signaling in digital processing apparatus numerical values of Delta X and Delta Y which are respectively equal to Vx. Delta T and Vy . Delta T, where Vx and Vy are numbers representing the X and Y axis components of the desired velocity vector V and Delta T is a predetermined constant number representing time, b. measuring off successive, equal and actual time periods Delta T/N, where N is a predetermined constant, c. creating X and Y axis command signals XSC and YSC representing the commanded positions of said member relative to reference points along the X and Y axes, respectively, d. during each said time periods and in response to said digital signaling changing X and Y axis command signals by amounts equal to Delta X/N and Delta Y/N, respectively, and e. utilizing said changing command signals to move said member along the X and Y axes so as to keep the actual X and Y axis positions of said member substantially in agreement with the commanded positions represented by said changing command signals.
 27. The method set forth in claim 26 wherein said X and Y axis command signals XSC and YSC are changed in said apparatus N times during each actual time period of Delta T duration, so that at the end of each Delta T period the member will have moved distances Delta X and Delta Y along the X and Y axes, respectively.
 28. The method set forth in claim 26 wherein said X and Y axis command signals are changed in said apparatus according to step (e) N-1 times during N-1 successive time periods Delta T,/N and wherein during each Nth time period Delta T/N said X and Y command signals are changed in said apparatus by whatever amounts may be necessary to make the total change therein for the preceding N periods equal to Delta X and Delta Y, respectively.
 29. A method of moving a member displaceable along X and Y axes at a selected angle theta in space at a desired composite velocity V comprising the steps of a. representing by first and second sets of digital signals in a digital processing apparatus numerical values of Delta X and Delta Y respectively equaling V . cos theta . Delta T and V . sin theta . Delta T, where Delta T numerically represents a predetermined time period, b. deriving in said apparatus from said first and second sets of digital signals tHird and fourth sets of signals digitally representing Delta X/N and Delta Y,/N where in N is a predetermined numerical constant, c. measuring off successive periods Delta T/N in actual time, d. creating from said third and fourth sets of signals digital command numbers XSC and YSC in said apparatus which are changed in steps during each such period Delta T/N by incremental amounts of Delta X/N and Delta Y,/N and e. driving said member along the X and Y axes at velocities respectively proportional to the average rates of change of said digital command numbers XSC and YSC.
 30. The method of moving a member displaceable along X and Y axes through a desired composite distance D at a desired angle theta with a desired composite velocity V comprising the steps of a. representing in a digital processing apparatus by first digital signals the numerical values of the X and Y axis components I and J of said distance D, b. representing in said apparatus by second digital signals the numerical values of macromove distances Delta X and Delta Y which are equal to (I . V . Delta T)/D and (J . V . Delta T)/D, where Delta T is a number representing a predetermined time interval, c. measuring off in actual time successive equal minor time periods each Delta T/N in duration, where N is a predetermined constant, d. generating in said apparatus third digital signals numerically representing commanded coordinate positions XSC and YSC of said member along the X and Y axes, e. deriving from said second digital signals fourth digital signals numerically representing micromove distances Delta X/N and Delta Y/N, e1. producing in said apparatus fifth and sixth digital signals representing numerically commanded positions XSC and YSC, f. algebraically combining in said apparatus during each of said minor time periods Delta T/N said third and fourth digital signals to update to a new value said fifth and sixth digital signals such that where XSC1 and YSC1 symbolize the value of XSC and YSC at the beginning of a given minor time period, and XSC2 and YSC2 symbolize the said new value, and g. moving said member along the X and Y axes by filtering digital servos which act to keep the actual positions of said member along the X and Y axes substantially equal to the changing numerical values of XSC and XSC.
 31. A method of generating a series of numerical command signals for moving a member displaceable along X and Y axes at velocity V in a straight line path at angle theta with the X axis comprising a. measuring off successive equal major periods Delta T in actual time, b. measuring off successive equal minor periods Delta T/N in actual time so as to subdivide each of said major periods Delta T into N minor time periods Delta T/N, c. producing in a digital processing apparatus first and second sets of signals respectively representing numerically macromove numbers V. Delta T .cos theta and V. Delta T . sin theta , d. producing in said apparatus third and fourth sets of signals respectively representing numerically micromove numbers by dividing by a factor of N the respective ones of the signaled numbers V. Delta T . cos theta and V. Delta T . sin theta , e. producing in said apparatus fifth and sixth sets of signals respectively representing commanded positions XSC and YSC along the X and Y axes to which said membEr is to move, and f. changing said fifth and sixth sets of signals during successive ones of said minor time periods by amounts equal to said micromove numbers respectively.
 32. The method of moving a member simultaneously along X and Y axis to produce resultant movement along a desired path segment which extends substantially along or at right angles to a vector which is the sum of X and Y axis components d x and dy, comprising the steps of a. computing and digitally signaling in a digital processing apparatus the numerical values of small incremental moves Delta X and Delta Y which are each proportional to a different one of the components dx and dy by the same factor of proportionality, b. measuring off a first series of immediately successive, equal and actual time periods Delta T1, c. measuring off a second series of immediately successive, equal and actual time periods Delta T2 each of which is equal in duration to a time period Delta T1 and staggered to partially overlap one of the periods Delta T1, d. during each time period Delta T1, utilizing the signaling of Delta X to cause movement of the member through the distance Delta X along the X axis, and e. during each time period Delta T2, utilizing the signaling of Delta Y to cause movement of the member through the distance Delta Y along the Y axis.
 33. The method defined in claim 32 and further characterized in that said step (a) is performed repeatedly at intervals equal in duration to Delta T1 and Delta T2, thereby to reflect in the computed values Delta X and Delta Y any change in the components dx and dy or in the factor of proportionality.
 34. The method of generating periodically updated numerical command signals for moving a member displaceable along X and Y axes at any desired angle theta relative to the X axis and at a composite velocity V, said method comprising the steps of a. measuring off a first series of immediately successive, equal and actual time periods Delta T1, b. measuring off a second series of immediately successive, equal and actual time periods Delta T2 each of which is equal in duration to a time period Delta T1 and is staggered to partially overlap one of the periods Delta T1, c. computing and digitally signaling in a digital processing apparatus the numerical values of incremental moves Delta X and Delta Y which are respectively proportional to V . cos theta . Delta T and V . sin theta . Delta T, where Delta T numerically represents the duration of each period Delta T1 or Delta T2, d. utilizing, during each actual time period Delta T1, the digital signaling of Delta X to cause a change in an X axis command signal by the amount Delta X, and e. utilizing, during each actual time period Delta T2, the digital signaling of Delta Y to cause a change in a Y axis command signal by the amount Delta y.
 35. The method set forth in claim 34, and wherein said computing and digital signaling of the moves Delta X and Delta Y is repeated at a rate of once per period Delta T of time, so as to modify the composite velocity or the angle represented by the changing X and Y axis command signals if the quantities V or theta change.
 36. A method of generating a series of numerical commands for moving a member displaceable along X and Y axes at velocity V in a straight line path at angle theta with the X axis comprising a. generating in a digital processing apparatus first, second, third and fourth sets of time base signals, the first recurring At equal time periods of Delta T1, the second recurring at equal time periods Delta T2, the third recurring at equal time periods of Delta T1/N, N times during each time period Delta T1, and the fourth recurring at equal time periods Delta T2/N, N times during each of the time periods Delta T2, said time periods Delta T1 and Delta T2 being of equal duration Delta T but staggered and interleaved relative to one another so that said time periods Delta T1/N and Delta T2/N are coextensive in time, b. producing in said apparatus fifth and sixth sets of signals respectively representing commanded points XSC and YSC along the X and Y axes to which said member is to move, c. producing in said apparatus a seventh set of signals digitally representing the quantity V. Delta T . sin theta , d. producing in said apparatus an eighth set of signals digitally representing the quantity V . Delta T . cos theta , e. deriving from said seventh set of signals a ninth set of signals in said apparatus digitally representing the quantity f. deriving from said eighth set of signals a tenth set of signals in said apparatus digitally representing the quantity g. during successive ones of said time periods Delta T1/N changing the quantity represented by said fifth set of signals by the quantity represented by said ninth set of signals, and h. during successive ones of said time periods Delta T2/N changing the quantity represented by said sixth set of signals by the quantity represented by said tenth set of signals.
 37. The method set forth in claim 36, further characterized in that the said step (c) is executed once during each time period Delta T1, and said step (d) is executed once during each time period Delta T2.
 38. The method of moving a member simultaneously along X and Y axes at a resultant velocity V through a series of points distributed along an arc of a circle, comprising the steps of a. measuring off a succession of equal actual time intervals Delta T, b. representing by digital signals in a digital processing apparatus a number XSC designating the X axis coordinate of a point on the arc, c. representing by digital signals in said apparatus a number YSC designating the Y axis coordinate of a point on the arc, d. computing in said apparatus at successive intervals Delta T the X axis displacement Delta X between successive points on the arc which are separated by a linear chord distance Delta D, e. computing in said apparatus at successive intervals Delta T the Y axis displacement Delta Y between successive points on the arc which are separated by a linear chord distance Delta D, where the distance Delta D for steps (d) and (e) is equal to V . Delta T, f. changing the representation of the number XSC by the computed quantity Delta X at successive intervals Delta T, g. changing the representation of the number YSC by the computed quantity Delta Y at successive intervals Delta T, h. moving said member along the X axis through distances and at a velocity corresponding respectively to the changes and average rate of change of the represented number XSC, and i. moving said member along the Y axis through distances and at a velocity corresponding respectively to the changes and the average rate of change of the represented number YSC.
 39. A method of moving a member displaceable along X and Y axes on a circular arc containing an initial point P0 and a succession of points P1, P2, P3, P4, P5...Pn, each of said points P0 through Pn being a lineaR distance Delta D from the adjacent one of said points comprising a. measuring off successive, equal and actual time periods T1, T2, T3, T4, T5...Tn, b. prior to the respective time periods T1, T3, T5, -producing in a digital processing apparatus signals respectively representing numerically the X axis distances Delta X02, Delta X24, Delta X46 ...between the points P0 to P2, P2 to P4, P4 to P6 ..., c. during respective pairs of said series of time periods T1-T2, T3-T4, T5-T6 ...driving said member under control of said signals through said distances Delta X02, Delta X24, Delta X46 ...along the X axis, d. prior to the respective time periods T2, T4, T6 ...producing in said apparatus signals respectively representing numerically the Y axis distances Y13, Y35, Y57 ...between the points P1 to P3, P3 to P5, P5 to P7 ..., and e. during respective pairs of said time periods T2-T3, T4-T5, T6-T7 ...driving said member along the Y axis through said distances Delta Y13, Delta Y35, Y57 ... with the speed of said member along both axes being kept substantially uniform during each of said pairs T1-T2, T3-T4, T5-I6....and T2-T3, T4-T5, T6-T7....of time periods.
 40. A method of moving a member displaceable along X and Y axes on a circular arc generated by a radius vector of length R which passes from an initial point P0 on said arc through a series of points P1, P2, P3, P4, P5 on said arc, each of said points P0 through P5 being a linear distance Delta D from the adjacent one of said points, comprising a. measuring off successive, equal and actual time periods T1, T2, T3, T4, T5 ..., b. prior to time period T1:
 41. A method of moving a member displaceable along X and Y on a circular arc generated by a radius vector of length R which passes from an initial point PO on said arc through a series of points P1, P2, P3, P4, P5 on said arc, each of said points PO through P5 being a distance Delta D from the adjacent one of said points, comprising a. measuring off successive, equal and actual time periods T1, T2, T3, T4, T5 ...and measuring off successive shorter time intervals t each of which is in duration equal to two of said periods divided by N, where N is an integer, b. prior to time period T1;
 42. The method of moving a member simultaneously along X and Y axes to produce resultant motion along a desired path to reach a commanded end point having position coordinates X2, Y2, comprising the steps of a. computing and signaling by first and second sets of digital signals in a digital processing apparatus the numerical values of incremental moves Delta X and Delta Y which are respectively proportional to cos Theta and sin Theta , where Theta is the angle at which said path lies relative to the X axis, b. measuring off successive, equal and actual time periods Delta T, c. during each of said periods utilizing said first and second sets of signals to cause said member to move the distance Delta X along the X axis and to move the distance Delta Y along the Y axis, d. detecting and signaling in said apparatus a forecasted overrun during that particular one of said time periods Delta T when one of the coordinates Xp or Yp which will be reached by said member at the end of the next M periods Delta T lies beyond the corresponding end point coordinate X2 or Y2 on the path, where M is an integer greater than zero, e. in response to such detection, adjusting said first and second signals in said apparatus to represent modified values Delta X'' and Delta Y'' of incremental moves which will bring the member to actual coordinates Xa and Ya substantially equal to the end point coordinates X2 and Y2.
 43. The method defined in claim 42 and wherein said integer M is
 11. 44. The method defined in claim 42 and wherein said integer M is
 45. The method defined in claim 42 and wherein the modified value Delta X'' is made equal to 1/Mth of the difference (X2 -X''a) and the modified value Delta Y'' is made equal to 1/Mth of the difference (Y2 - Y'' a), where X'' a and Y''a are the coordinates to be reached by said member during said particular one of said time periods.
 46. The method defined in claim 43 and wherein said step (d) includes the sub-steps of d1. producing in said apparatus an indicator signal indicative of particular axis (X or Y) along which the member''s velocity is the greatest, d2. in response to said indicator signal and during each of said time periods Delta T, computing and digitally signaling in said apparatus the numerical value of the predicted coordinate (Xp or Yp) which will be reached by said member along the axis of greatest velocity (X or Y) at the end of the next M periods Delta T, d3. comparing in said apparatus said signaled value (Xp or Yp) during each of said time periods Delta T with the corresponding end point coordinate (X2 or Y2) on the axis of greatest velocity, and d4. executing said step (e) when said comparing indicates that the said predicted coordinate (Xp or Yp) lies beyond the end point coordinate (X2 or Y2) in the direction of travel along the axis of greatest velocity.
 47. The method of moving a member displaceable along X and Y axes at a selected angle in space and through a desired composite distance D at a desired composite velocity V to a desired end point coordinates X2, Y2 which comprises a. representing by digital signals in a digital processing apparatus the X and Y components I and J of said composite distance, b. processing in said apparatus said digital signals to derive first and second sets of signals representing Delta X and Delta Y numbers which are respectively equal to:
 48. The method of moving a member displaceable along X and Y axes through successive composite distance components D at successive selected angles in space with successive desired composite velocities V which comprises: a. representing numerically by digital electrical signals in a digital processing apparatus the X and Y components I and J of a first composite distance D, b. processing said signals in said apparatus to derive first and second sets of signals numerically representing Delta X and Delta Y distances which are respectively equal to:
 49. For use with a numerical director wherein, during each of a series of equal time periods Delta T1, Delta T2 ... Delta Tn digital XCP signals are generated in a digital processing apparatus to represent points XCP1, XCP2, ... XCPn which are spaced along the X axis Delta X distance apart and which are to be successively reached by a controlled member in order to reach the X axis coordinate XCEP of the desired end point of a path segment at a desired velocity, a method of predicting the particular time period during which said member would go past said end point, comprising the steps of a. producing in said apparatus XCEP signals representing said XCEP coordinate, b. during each of said time periods producing in said apparatus look-ahead signals representing the projected X axis coordinate of the point which said member will be directed to reach during the following M time periods, where M is a preselected integer, c. during each of said time periods comparing in said apparatus said look-ahead signals with said XCEP signals, and d. producing in said apparatus a warning signal during the first time period in which said comparison indicates that the X axis coordinate represented by said look-ahead signals is beyond the X axis coordinate represented by said XCEP signals.
 50. The method of claim 49 further characterized by the additional step of terminating movement along said path segment at the end of the time period preceding said particular time period.
 51. The method of claim 49 further characterized by the additional steps of a. producing in said apparatus an auxiliary signal during said first time period if the amount by which the X axis coordinate represented by said look-ahead signals is past the X axis coordinate represented by said XCEP signals exceeds approximately one-half the X axis distance Delta X to be traversed by said member during the particular time period in which said overrun is predicted to occur, b. terminating movement along said path segment at the end of the time period preceding said particular time period if both of said warning signal and said auxiliary signal are produced during said first time period, and c. terminating movement along said path segment at the end of said particular time period if only said warning signal is produced during said first time period.
 52. The method of claim 49 further characterized by the additional step of generating in said apparatus modified signals XCP'' in place of at least one of said XCP signals which normally would occur after said first time period, said modified signals XCP'' representing points which are spaced along the X axis Delta X'' distance apart and the last one of which coincides with said XCEP coordinate.
 53. The method of claim 51 further characterized by the additional steps of a. generating in said apparatus modified signals XCP'' in place of each of M successive ones of said signals in response to the production of both said warning signal and said auxiliary signal during said first time period, said modified XCP signals representing points which are spaced on the X axis by a distance which is greater than Delta X, and b. generating in said apparatus modified XCP signals in place of each of M successive XCP signals in response to the production of only said warning signal during said first time period, said modified XCP signals representing points which are spaced along the X axis by a distance which is less than Delta X.
 54. A method of Generating a series of numerical command signals for moving a member displaceable along X and Y axes to a target point X2, Y2 along a straight line path at a velocity V and at an angle theta to the X axis comprising a. generating time base signals cyclically recurring at, and defining a succession of, equal time periods Delta T, b. producing in a digital processing apparatus first and second sets of signals respectively representing, in the form of macromove numbers, distances V . Delta T . cos theta and V . Delta T . sin theta through which said member is to move over an elapsed time of Delta T duration along the X and Y axes respectively, c. producing in said apparatus third and fourth sets of signals respectively representing points XCP, YCP along the X and Y axes which said member is to reach, d. periodically upgrading said third and fourth sets of signals by amounts equal to said macromove numbers V . Delta T . sin theta and V . Delta T . cos theta respectively, e. following each upgrading of one of said sets of signals producing in said apparatus signals representing the projected distance which said member will be directed to traverse along a selected one of said X and Y axes during the following M time periods of Delta T duration where M is a predetermined integer other than zero, and f. determining in said apparatus whether or not the position to be reached by the member after it has traversed said projected distance will be beyond its target point for said selected axis.
 55. The method of claim 54 further characterized by the additional step of a. in response to a determination that said member would reach its target point along said selected axis within M time periods of Delta T duration, changing said macromove numbers V. Delta T.sin theta and V. Delta T.cos theta for subsequent time periods Delta T so as to cause said upgraded third and fourth sets of signals in said apparatus to represent coordinate points XCP and YCP which are substantially equal to the target coordinates X2 and Y2 after upgrading during one of the time periods.
 56. The method of claim 54 further characterized by the additional steps of a. during each time period Delta T producing in said apparatus first and second sets of signals representing the amount, if any, by which said member would be directed past its target point along said selected axis during the following M and M-1/2 time periods, b. if it is determined that said member would be directed to travel past its target point on said selected axis within M-1/2 time periods, increasing by equal proportions the signaled macromove numbers V. Delta T.cos theta and V. Delta T.sin theta to be traveled along said X and Y axes during each of the M-1 time periods Delta T which precede the specific time period Delta T in which said member would travel past its target point, so that said member will actually reach its target points X2, Y2 substantially at the end of the last one of said preceding M-1 time periods Delta T, and c. if it is determined that said member would be directed to travel past its target point along said selected axis within M time periods Delta T but not within M- 1/2 time periods Delta T, reducing the signaled macromove numbers V. Delta T.cos theta and V. Delta T.sin theta representing the distances to be traversed by said member during the specific time period Delta T in which the element would otherwise travel past its target point along said selected axis and also during the M-2 time periods Delta T prior thereto by equal proportions so thaT the element will actually reach its target points x2, Y2 substantially at the end of said specific time period Delta T.
 57. In a system for moving a member simultaneously along X and Y axes to produce resultant movement along a desired path segment which extends substantially along or at right angles to a vector which is the sum of X and Y axis components dx and dy, the combination comprising a. means for digitally signaling the numerical values of the components dx and dy, b. a time shared arithmetic computer having a cyclic time base generator repeatedly signaling recurring successive and equal time periods Delta T, c. means for feeding the signals representing dx and dy to said computer during at least a portion of some of said periods Delta T along with signals representing a factor of proportionality Q to obtain output signals from the computer representing small, incremental moves Delta X and Delta Y which are respectively proportional to dx and dy by said factor of proportionality Q, said factor of proportionality Q itself being directly proportional to the desired path velocity and inversely proportional to the length of said vector, d. and means responsive to said output signals from said computer for driving said member through the distance Delta X along the X axis during each of said time periods Delta T, and for driving said member through the distance Delta Y along the Y axis during each of said time periods Delta T.
 58. In a system for moving a member simultaneously along X and Y axes to produce resultant movement along a path segment D having X and Y axis components I and J, the combination comprising a. means for digitally signaling the numerical values of the components I and J, b. a time shared arithmetic computer having a time base generator repeatedly signaling the lapse of successive, equal time periods Delta T, c. means feeding the signals representing I and J to said computer during at least a portion of some of said time periods together with signals representing a factor of proportionality to obtain output signals from the computer representing small incremental moves Delta X and Delta Y which are respectively proportional to I and J, said factor of proportionality Q itself being directly proportional to the desired path velocity and inversely proportional to the length of said path segment, d. and means responsive to said output signals for driving said member during each period Delta T through the distance Delta X along the X axis and the distance Delta Y along the Y axis.
 59. The combination set forth in claim 58, further characterized in that said means (d) includes d1. accumulator registers adapted to receive and digitally store signals representing command coordinate numbers XSC and YSC, d2. means controlling said computer to cause the latter once during each time period Delta T to (i) add the number Delta X to the number XSC and store the result in said registers and ii. add the number Delta Y to said number YSC and store the result in said registers, d3. and servo drive means responsive to the XSC and YSC signals to drive said member along the X and Y axes through distances and at velocities proportional to the extents and the average rate of change of the numbers XSC and YSC, respectively.
 60. The combination set forth in claim 58, further characterized in that said factor of proportionality Q is equal to (V. Delta T)/D, where V represents a desired velocity along the path segment, D represents the length of the path segment, and Delta T numerically represents the duration of each of said periods Delta T, the said output signals Delta X and Delta Y thereby respectively representing the quantities (V. Delta T.I)/D and (V. Delta T.J)/D.
 61. In a numerical control system a director for producing first and second sets of digital command signals each changed at time intervals of Delta T to represent successive designated X and Y coordinates of a controlled member which is to move at a velocity V from a pair of initial coordinates Xi, Yi along a linear path D having an X component I and a Y component J comprising a. a digital computer, b. a plurality of digital signal storage means for storing digital signals; c. means for storing in respective ones of a first and a second of said signal storage means, signals numerically representing I and J, d. means for causing said computer successively to process the signals stored in said first and second storage means and to produce as a result signals numerically representing the quantities e. means for storing the signals representing Delta X and Delta Y in respective ones of a third and a fourth of said signal storage means, f. said plurality including fifth and sixth storage means for holding first and second command signals numerically representing commanded coordinates XCP and YCP, g. means for initially supplying into said fifth and sixth storage means signals which make the stored representation of XCP and YCP equal to the initial coordinates Xi and Yi, and h. means for causing said computer to operate during equal, successive time periods Delta T on the signals stored in said fifth storage means so as to change the coordinate value XCP represented thereby the quantity Delta X and on the signals stored in said sixth storage means so as to change the coordinate value YCP represented thereby by the quantity Delta Y.
 62. In a numerical control system a director for producing first and second sets of digital command signals changed at periods of Delta T to represent successive designated X and Y coordinates of a controlled member which is to move at a velocity V from a point having coordinates X0, Y0 along a linear path D having an X component I and a Y component J comprising a. a digital computer, b. a plurality of digital signal storage means for storing digital signals, c. means for storing, in respective ones of a first and a second of said signal storage means, signals numerically representing I and J, d. means for causing said computer successively to process the signals stored in said first and second storage means and to produce as a result signals numerically representing the quantities e. means for storing the signals representing Delta X and Delta Y in respective ones of a third and a fourth of said signal storage means, f. means for initially storing in respective ones of a fifth and a sixth of said plurality of storage means signals XSC and YSC representing the coordinates X0 and YO, and g. means for causing said computer to operate at intervals of Delta T/N, where Nis a predetermined constant, on the signals XSC stored in said fifth storage means so as to change the coordinate value represented thereby by the quantity Delta X/N , and on the signals YSC stored in said sixth storage means so as to change the coordinate value represented thereby by the quantity Delta Y/N.
 63. A numerical control system for moving a controlled member in an X-Y coordinate system at a velocity V from a pair of initial coordinates Xi, Yi aloNg a linear path D having an X component I and a Y component J comprising a. a digital computer, b. a plurality of digital signal storage means for storing digital signals, c. means for storing in respective ones of a first and a second of said signal storage means signals numerically representing I and J, d. means for causing said computer successively to process the signals stored in said first and second storage means and to produce as a result signals numerically representing the quantities where Delta T is a predetermined time interval; e. means for storing the signals representing Delta X and Delta Y in respective ones of a third and a fourth of said signal storage means, f. said plurality including fifth and sixth storage means for holding first and second command signals numerically representing X and Y commanded coordinates XCP and YCP, g. means for initially setting said fifth and sixth storage means to make the stored representation of XCP and YCP equal to the initial coordinates X0 and Y0, h. means for feeding to said computer
 64. In a numerical control system a director for producing first and second sets of digital command signals each changed at time intervals of Delta T to represent successive designated X and Y coordinates of a controlled member which is to move at a velocity V from a pair of initial coordinates Xi, Yi along a linear path D having an X component I and a Y component J comprising a. a digital computer b. a plurality of digital signal storage means for storing digital signals, c. means for storing, in respective ones of a first and a second of said plurality, signals numerically representing I and J, d. means for storing, in a third one of said plurality, signals representing Q which is equal to said velocity V times one of said time intervals Delta T, all divided by said path D, e. means for causing said computer to utilize the signals stored in said first and third storage means to produce signals numerically representing the quantity I times Q, and for storing said I times Q signals in a fourth one of said plurality to represent an X increment Delta X, f. means for causing said computer to utilize the signals stored in said second and third storage means to produce signals numerically representing the quantity J times Q and for storing said J times Q signals in a fifth one of said plurality to represent a Y increment Delta Y, g. said plurality including sixth and seventh storage means for holding first and second command signals numerically representing commanded coordinates XCP and YCP, h. means for initially supplying into said sixth and seventh storage means signals which make the stored representation of XCP and YCP equal to the initial coordinates Xi and Yi, i. means for causing said computer to utilize the signals in said fourth storage means to change at time intervals at Delta T the coordinate value XCP represented by the signals stored in said sixth storage means by the quantity Delta X, and j. means for causing said computer to utilize the signals in said fifth storage means to change at time intervals of Delta T the coordinate value YCP represented by the signals stored in said sixth storage means by the quantity Delta Y.
 65. In a numerical control system a director for producing first and second sets of digital command signals changed at periods of Delta T to represent successive designated X and Y coordinates of a controlled member which is to move at a velocity V from a point having coordinates X0 and Y0 along a linear path D having an X component I and a Y component J to an end point having coordinates X1, Y1 comprising a. a digital computer, b. a plurality of digital signal storage means, c. means for storing digital signals for storing in respective ones of a first and a second of said signal storage means signals numerically representing I and J, d. means for causing said computer successively to process the signals stored in said first and second storage means and to produce as a result signals numerically representing the quantities e. means for storing the signals representing Delta X and Delta Y in respective ones of a third and a fourth of said signal storage means, f. said plurality including fifth and sixth storage means for holding first and second command signals numerically representing commanded coordinates XCP and YCP, g. means for initially supplying into said fifth and sixth storage means signals which make the stored representation of XCP and YCP equal to the coordinates X0 and Y0, h. means for causing said computer to operate over a given period of time at intervals of Delta T on the signals stored in said fifth storage means so as to change the coordinate value XCP represented thereby by the quantity Delta X and on the signals stored in said sixth storage means so as to change the coordinate value YCP represented thereby by the quantity Delta Y, and i. means for causing said computer to operate over another given period of time at intervals of Delta T on the signals stored in said fifth and sixth storage means to change the coordinate values XCP and YCP represented thereby by quantities Delta X'' and Delta Y'', said quantities Delta X'' and Delta Y'' having values such that after one of said time intervals Delta T during said another given time period the coordinate values of XCP and YCP will closely agree with the coordinates X1, Y1 of said end point.
 66. In a numerical control system a director for producing first and second sets of digital command signals changed at periods of Delta T to represent successive designated X and Y coordinates of a controlled member which is to move at a velocity V from a point having coordinates X0 and Y0 along successive linear paths D, each having an X component I and a Y component J comprising a. a digital computer, b. a plurality of digital signal storage means for storing digital signals, c. means for storing in respective ones of a first and a second of said signal storage means signals numerically representing I and J, d. means for causing said computer successively To process the signals stored in said first and second storage means and to produce as a result signals numerically representing the quantities e. means for storing the signals representing Delta X and Delta Y in respective ones of a third and a fourth of said signal storage means, f. said plurality including fifth and sixth storage means for holding first and second command signals numerically representing commanded coordinates XCP and YCP, g. means for initially supplying into said fifth and sixth storage means signals which make the stored representation of XCP and YCP equal to the coordinates X0 and Y0, h. means for causing said computer to utilize the signals stored in said third storage means to change by an amount Delta X at intervals of Delta T the coordinate value XCP represented by the signals stored in said fifth storage means,
 67. The director of claim 66 further characterized by means for producing third and fourth sets of command signals XSC and YSC changed at periods of Delta T/N, where N is a predetermined constant, to represent successive designated X and Y coordinates which are intermediate the X and Y coordinates XCP and YCP represented by said first and second command signals, said means for producing third and fourth sets of command signals including a. seventh and eighth storage means for storing digital signals, b. means for initially storing in respective ones of said seventh and eighth storage means XSC and YSC signals representing the coordinates X0 and Y0, c. means for causing said digital computer during each successive period Delta T/N to process the signals stored in said third storage means to derive therefrom the quantity Delta X/N and thereafter to operate upon the signals stored in said seventh storage means so as to change the XSC coordinate value represented thereby by the quantity Delta X/N, and d. means for causing said digital computer during each period Delta T/N to process the signals stored in said fourth storage means so as to derive therefrom the quantity Delta Y/N and thereafter to operate upon the signals stored in said eighth storage means so as to change the YSC coordinate value represented thereby by the quantity Delta Y/N. i. means for causing said computer to utilize the signal stored in said fourth storage means to change by an amount Delta Y at intervals of Delta T the coordinate value YCP represented by the signals stored in said sixth storage means, j. means responsive to the coordinate represented by the signals stored in at least one of said fifth and sixth storage means reaching within a predetermined distance of the end of the first of said linear paths D for entering signals numerically representing the I and J values of the next one of said paths D in the respective ones of said first and second storage means, said means (d) through (h) being operative to repeat their defined functions thereafter.
 68. The director of claim 66 further characterized by means for predicting the specific time period Delta T during which the command signal XCP will be changed to represent X coordinates which are past a desired X axis end point coordinate XCEP, said means for predicting including a. ninth storage means and means for storing in it the signals representing said end point coordinate XCEP, and b. means for causing said computer to process during each said time period Delta T the signals stored in said third, fifth, and ninth storage means to produce a signal representing the comparative magnitudes of
 69. The director of claim 68 further characterized by means for producing, during the same time period Delta T in which said block end warning signal appears, a signal indicative of whether or not the command signals scheduled to be produced during said specific time period Delta T represent an X coordinate which differs from said end point coordinate XCEP by more than one-half Delta X.
 70. The director of claim 68 further characterized by means responsive to said block end warning signal for changing, for a predetermined number of time periods Delta T prior to said specific time period Delta T, the signals stored in said third and fourth storage means to represent modified values of Delta X'' and Delta Y'' which, when repetitively added said predetermined number of times to the coordinate quantities represented by the signals XCP stored in said fifth storage means, will cause said last named signals to represent the X and Y axis coordinate values which essentially equal said end point coordinate value XCEP.
 71. In a straight line generator for extending a straight line through a distance D at a resultant velocity V during successive time periods Delta T along the Y axis and during successive time periods Delta T'' along the X axis, said time periods Delta T and Delta T'' being of equal duration but symmetrically staggered, the combination comprising a. computing means for performing arithmetic computations, b. means for storing a number I and a number J respectively representing the X and Y component distances of the distance D, c. means for receiving and storing a number Delta X, d. means for receiving and storing a number Delta Y, e. first control means for causing said computing means to multiply said number I by a factor of (V. Delta T)/D and to store the resulting product in said means for receiving and storing the number Delta X, f. second control means for causing said computing means to multiply said number J by a factor of V. Delta T/D and to store the resulting product in said means for receiving and storing the number Delta Y, g. means for extending said straight line along the X axis during each of said periods Delta T by an amount represented by said number Delta X, and h. means for extending said straight line along the Y axis during each of said periods Delta T'' by an amount represented by said number Delta Y.
 72. In a numerical control system a director for producing X and Y axis command signals numerically representing motion along a straight line through a distance D at a resultant velocity V during successive time periods Delta T along the Y axis and during successive time periods Delta T'' along the X axis said time periods Delta T and Delta T'' being of equal duration but symmetrically staggered, the combination comprising a. computing means for performing arithmetic computations, b. means for storing a number I and a number J respectively representing the X and Y coordinate distances from a first point Po to a second point Pe, c. means for receiving and storing a number Delta X and a number Delta Y respectively representing desired motion along the X and Y axes during said time periods Delta T'' and Delta T respectively, d. first control meAns for causing said computing means to multiply said number I by a factor of V. Delta T/D and to store the resulting product in said means for receiving and storing the number Delta X, e. a second control means for causing said computing means to multiply said number J by a factor of V. Delta T/D and to store the resulting product in said means for receiving and storing the number Delta Y, f. a first updatable storage register and means for entering into it a number Xs representing the X coordinate of said point Po, g. a second updatable storage register and means for entering into it a number Ys representing the Y coordinate of a point P1 on a straight line between said points P0 and Pe and at a distance of (V. Delta T)/2 from said point Po h. third control means for causing said computing means to change the number Xs stored in said first register N times during each of said time periods Delta T, each time by an amount substantially equal to Delta X/N, and i. fourth control means for causing said computing means to change the number Ys stored in said second register N times during each of said time periods Delta T'', each time by an amount substantially equal to Delta Y/N.
 73. A numerical control for causing relative motion between two machine members along a circular path, comprising a. first and second storage means for storing digital signals, b. means including a digital computer for storing in said first storage means a first series of numbers at regularly spaced time intervals Delta T, respective ones of said first series of numbers representing the X axis distances between a first series of equidistance points P0, P2, P4 on said circular path, c. means including said digital computer for storing in said second storage means a second series of numbers at regularly spaced time intervals Delta T'' which are staggered symmetrically with but are of the same duration as said time intervals Delta T, respective ones of said second series of numbers representing the Y axis distances between a second series of equidistant points P1, P3, P5 on said circular path staggered symmetrically with but spaced the same distance apart as said points P0, P2, P4, d. means responsive to the numbers stored in said first storage means for causing relative motion between said machine members corresponding to respective ones of said X axis distances during successive ones of said time intervals Delta T, and e. means responsive to the numbers stored in said second storage means for causing relative motion between said machine members corresponding to respective ones of said Y axis distances during successive ones of said time intervals Delta T''.
 74. a circle generator comprising a. first and second storage means for storing digital signals, b. a digital computer, c. first control means for causing said computer to calculate and store in said first storage means a first series of numbers at regularly spaced time intervals Delta T, respective ones of said first series of numbers representing the X axis distances between a first series of equidistant points P0, P2, P4 on said circle, d. second control means for causing said digital computer to calculate and store in said second storage means a second series of numbers at regularly spaced time intervals Delta T'' which are staggered symmetrically with but are of the same duration as said time intervals Delta T, respective ones of said second series of numbers representing the Y axis distances between a second series of equidistant points P1, P3, P5 on said circle staggered symmetrically with but spaced the same distance aparT as said points P0, P2, P4, e. third and fourth storage means respectively for storing numbers representing the X coordinate of said point P0 and the Y coordinate of said point P1, f. means for causing said digital computer successively to change the number stored in said third storage means N times during each of said time intervals Delta T, each time by an amount equal to 1/N times the number then stored in said first storage means, and g. means for causing said digital computer successively to change the number stored in said fourth storage means N times during each of said time intervals Delta T'' each time by an amount equal to 1/N times the number then stored in said second storage means.
 75. A numerical control for causing relative motion between two machine members along a circular path, comprising a. computing means for performing arithmetic computations, b. means for storing a number I representing the X coordinate distance from a first point P0 of said circular path to the center of said circular path, a number J representing the Y coordinate distance of a second point P1 on said circular path to the center of said circular path, a number Delta Y representing a desired extension of said circular path along the Y axis toward said point P1, and a number Delta X representing a desired extension of said circular path along the X axis from the X coordinate of said point P0 to the X coordinate of a point P2 on said circular path, said point P1 being midway between said points P0 and P2, c. first control means for causing said computing means to replace the stored number I with the remainder of said number I less the stored number Delta X, then to multiply said remainder by a factor -Q, where Q is the ratio of the distance between said points P0 and P2 and the distance between said point P0 and the center of said circular path, and finally to store the resulting product as a newly stored number Delta Y, representing the next desired extension of said circular path along the Y axis, in place of the previously stored number Delta Y, d. second control means for causing said computing means to replace the stored number J with the remainder of said number J less the newly stored number Delta Y, then to multiply said last remainder by said ratio Q, and finally to store the resulting product as a newly stored number Delta X, representing the next desired extension of said circular path along the X axis, in place of said previously stored number Delta X, each of said first and second control means repeating its assigned series of functions a predetermined time after the other of said control means has carried out its assigned series of functions, and e. means for causing relative motion between said machine members along the X and Y axes by amounts corresponding to successive ones of said newly stored Delta X and Delta Y numbers.
 76. In a circular curve generator the combination comprising a. computing means for performing arithmetic computations, b. means for storing a number I representing the X coordinate distance from a first point P0 of said circle to the center of said circle, a number J representing the Y coordinate of a second point P1 on said circle to the center of said circle, a number Delta Y representing a desired extension of said curve along the Y axis toward said point P1, and a number Delta X representing a desired extension of said curve along the X axis from the X coordinate of said point P0 to the X coordinate of a point P2 on said circle, said point P1 being midway between said points P0 and P2, c. first control means for causing said computing means to replace the stored number I with the remainder of said number I less the stored number Delta X, then to multiply said remainder by a factor -Q, where Q is the ratio of the distance between said points P0 and P2 and the distance between said point P0 and the center of said circle, and finally to store the resulting product as a newly stored number Delta Y, representing the next desired extension of said curve along the Y axis, in place of the stored number Delta Y, d. second control means for causing said computing means to replace the stored number J with the remainder of said number J and the newly stored number Delta Y, then to multiply said last remainder by said ratio Q, and finally to store the resulting product as a newly stored number Delta X, representing the next desired extension of said curve along the X axis, in place of said stored number Delta X, each of said first and second control means repeating its assigned series of functions a predetermined time after the other of said control means has carried out its assigned series of functions, e. means for storing a pair of numbers respectively representing the X coordinate of said point P0, and the Y coordinate of said point P1, and f. third and fourth control means respectively for causing said computing means to change the stored P0 X coordinate and the P1 Y coordinate numbers by increments corresponding to respective successions of said newly stored Delta X and Delta Y numbers, each said incremental change being made by said computing means in N substantially equal steps.
 77. In a circle generator, the combination comprising a. arithmetic computing means for performing arithmetic computations, b. means for initially storing a number I0 representing the X coordinate distance from a first point PO on said circle to the center of said circle and a number J0 representing the Y coordinate distance of said point P0 to the center of said circle, c. storage means for receiving from said computing means and storing a number Delta Y representing a distance along the Y axis and a number Delta X representing a distance along the X axis, d. first control means for causing said computing means to multiply said initially stored number I0 by a factor -Q, where Q is the ratio of the distance between said point P0 and a further point P2 on said circle and the distance between said point P0 and the center of said circle, and to store the product, representing twice the desired initial extension of said circle along the Y axis, in said storage means as the first number Delta Y, e. second control means for causing said computing means to replace the initially stored number J0 with a new number J1 which is equal to the remainder of said number J0 less one-half of said stored first number Delta Y, to multiply said sum by said ratio Q and finally to store the product, representing the first desired extension of said circle along the X axis, in said storage means as the first number Delta X, f. third control means for causing said computing means to replace the initially stored number I0 with a new number I2 which is equal to the remainder of said number I0 less the stored first number Delta X, then to multiply said last-named remainder by a factor of -Q, and finally to store newly the resulting product, representing the next desired extension of said circle along the Y axis in place of the said stored first number Delta Y, g. fourth control means for causing said computing means to replace the stored number J1 with the remainder of said number J1 less the newly stored number Delta Y, then to multiply said last remainder by said ratio Q, and finally to store newly the resulting product, representing the next desired extension of said circle along the X axis, in place of said stored first number Delta X, each of said third and fourth control means repeating its assigned series of functions a predetermined time after the other of said third and fourth control means has carried out its assigned series of functions, and h. means for extending said circle by amount corresponding to one-half said first number Delta Y and successive ones of said newly stored numbers Delta Y along the Y axis, and by amounts corresponding to said first number Delta X and successive ones of said newly stored numbers Delta X along the X axis.
 78. A circle generator comprising a. first and second storage means for storing digital signals, b. a digital computer, c. first control means for causing said digital computer to calculate and store in said first storage means a first series of numbers at regularly spaced time intervals Delta T, respective ones of said numbers representing the X coordinate distances between a first series of equidistant points P0, P2, P4 on said circle, d. second control means for causing said digital computer to calculate and store in said second storage means a second series of numbers at regularly spaced intervals Delta T'' which are staggered symmetrically with but are of the same duration as said time intervals Delta T, respective ones of said second series of numbers representing the Y coordinate distances between a second series of equidistant points P1, P3, P5 on said circle staggered symmetrically with but spaced the same distance apart as said points P0, P2, P4, e. third and fourth storage means respectively for storing numbers representing the X coordinate of said point P0 and the Y coordinate of said point P1, f. means for causing said digital computer to change the numbers stored in said third storage means during successive ones of said time intervals Delta T by amounts equal to the numbers stored in said first storage means, g. means for causing said digital computer to change the numbers stored in said fourth storage means during successive ones of said intervals Delta T'' by amounts equal to the numbers stored in said second storage means, h. fifth storage means for storing a number X1 representing the X coordinate of a target point on said circle, i. control means for causing said computer to compare during each said time interval Delta T the sum of (1) the changed number stored in said third storage means, and (2) an integral multiple of the number stored in said first storage means with (3) the number stored in said fifth storage means, and to produce a signal indicating which of the compared quantities is the lesser; and j. means responsive to said signal for producing a block end warning signal during the first time period Delta T in which the lesser of the compared quantities becomes the greater.
 79. In a numerical control system a director for producing first and second sets of digital command signals changed at time periods of Delta T to represent successive designated X and Y coordinates of a controlled member which is to move at a velocity V from a point having coordinates X0, Y0 along a linear path to an end point having coordinates X1, Y1, the combination comprising a. an arithmetic digital computer, b. a plurality of digital signal storage means for storing digital signals, c. means for storing in respective ones of a first and a second of said signal sTorage means signals numerically representing quantities Delta X and Delta Y, d. means for initially storing in respective ones of a third and a fourth of said plurality of storage means signals representing the coordinates X0, Y0, e. means for causing said computer to operate at intervals of Delta T on the signals stored in said third storage means so as to vary the coordinate value represented thereby by the quantity Delta X and on the signals stored in said fourth storage means so as to vary the coordinate values represented thereby by the quantity Delta Y, the values represented by the resulting signals in said third and fourth storage means being designated XCP and YCP respectively, f. means for comparing the quantities XCP + M Delta X and XCP + M Delta X- 1/2 Delta X during each of said time periods Delta T with the value of said X axis end point coordinate X1 and giving a first indication if the first of said quantities has been changed to go through the value of said coordinate X1 and giving a second indication if the second of said quantities has also been changed to go through the value of said coordinate X1, g. means responsive to said first indication to cause said digital computer to replace, during the following time period Delta T, signals stored in said first and second storage means with signals respectively representing the quantities and h. means responsive to said second indication to cause said digital computer to replace during the same time period Delta T in which said second indication is given the signals stored in said first and second storage means with signals representing the quantities
 80. A method for reducing the handling capacity required for storage in arithmetic elements of a numerical director used to generate command signals for moving a member displaceable along X and Y axes by continuously computing in the form of macromove numbers the distances which said member is to traverse along the X and Y axes during each of a succession of equal time periods and by further processing the computed macromove numbers to produce successive X and Y axis target points to be reached by said member after successive ones of said time periods comprising
 81. A method of advancing the X and Y axis servo drives of a member driven by said servo drives along the X and Y axes through a selected path comprising a. measuring off a first series of time intervals Delta T and a second series of time intervals Delta T'', said intervals Delta T'' being of the same duration as, but starting midway through respective ones of, said intervals Delta T, b. individually computing and signaling, in a digital processing apparatus, for each of said time intervals Delta T the X axis distance to be traversed by said member durIng said time interval Delta T and for each of said time intervals Delta T'' the Y axis distance to be traversed by said member during said time interval Delta T'', c. during each of said time intervals Delta T advancing the X axis servo drive in a plurality of substantially equal increments the sum of which equals the X axis distance computed for a said time interval Delta T, and d. during each of said time intervals Delta T'' advancing the Y axis servo drive in a plurality of substantially equal increments the sum of which equals the Y axis distance computed for a said time interval Delta T''.
 82. A method of moving a member displaceable along X and Y axes through successive path segments which comprises a. representing in a digital processing apparatus a first path segment by a pair of digitally signaled path numbers I and J, b. measuring off a first series of time intervals Delta T and a second series of time intervals Delta T'', said intervals Delta T'' being of the same duration as, but starting midway through respective ones of said intervals Delta T, c. for each of said time intervals Delta T computing in said apparatus from said path numbers I and J the Y coordinate distance to be traversed by said member during said time interval Delta T and for each of said time intervals Delta T'' computing in said apparatus from said path numbers I and J the X coordinate distance to be traversed by said member during said time interval Delta T'', d. during each of said intervals, Delta T moving said member along the Y axis in a plurality of substantially equal increments the sum of which equals the Y coordinate distance computed for said time interval Delta T, and during each of said time intervals Delta T'' moving said member along the X axis in a plurality of substantially equal increments the sum of which equals the X coordinate distance computed for said time interval Delta T'', and e. during at least one of the last few periods Delta T prior to the complete execution of said first path segment representing in said apparatus a second path segment by a second pair of digitally signaled path numbers I and J and thereafter repeating steps (c) and (d) to cause said member to execute said second path segment. 